/**************************************************************
  > File Name: scanf.c
  > Author: LuoLiang
  > Mail: 1204553475@qq.com 
  > Created Time: 2022年01月24日 星期一 10时45分35秒
 **************************************************************/

#include <stdio.h>
#include <stdlib.h>

#define BUFFSIZE 256

/* 字符串后接一个字符的解决方法 */
void func()
{
	char buff[BUFFSIZE];
	char ch;
	
	/* 用%*c */
//	scanf("%s%*c%c",buff,&ch);

	/* 用%[^\n]%*c */
//	scanf("%[^\n]%*c%c",buff,&ch);

	/* 用getchar() */
	scanf("%s",buff);
	getchar();
	scanf("%c",&ch);

	puts(buff);
	printf("%c\n",ch);
}

/* \n要清除 */
void func2()
{
	char buff[BUFFSIZE];
	char ch;
	
	int i = 0;
	while(i++ < 10)
	{
		ch = getchar();
		scanf("%c",&ch);
		printf("%c ",ch);
	}
}

/* %c后的\n会被%s自动消除 */
void func3()
{
	char buff[BUFFSIZE];
	char ch;

	scanf("%c",&ch);
	scanf("%*c%s",buff);

	printf("%c\n",ch);
	puts(buff);

}

void func4()
{
	char str1[BUFFSIZE] = {0};
	char str2[BUFFSIZE] = {0};
	char str3[BUFFSIZE] = {0};
	char str4[BUFFSIZE] = {0};

	/* 跳过一段字符串 */	
	scanf("%*[^\n]%*c");

	/* 读到\n为止 */
	scanf("%[^\n]\n",str1);

	/* 读到#为止 */
	scanf("%[^#]",str2);

	/* 过滤掉\n为止 */
	scanf("%*[^\n]",str3);

	/* 过滤到#为止 */
	scanf("%*[^#]",str4);

	puts(str1);
	puts(str2);
	puts(str3);
	puts(str4);

}

int main(int argc,char **argv)
{
	//func();
	//func2();
	//func3();
	func4();
    exit(0);
}
